React Native একটি জনপ্রিয় ফ্রেমওয়ার্ক যা মোবাইল অ্যাপ্লিকেশন ডেভেলপমেন্টের জন্য ব্যবহৃত হয়। এর মাধ্যমে আপনি JavaScript এবং React দিয়ে iOS এবং Android অ্যাপ্লিকেশন তৈরি করতে পারেন। SQLite একটি লাইটওয়েট ডাটাবেস সিস্টেম যা ছোট থেকে মাঝারি আকারের ডাটাবেস ব্যবস্থাপনার জন্য উপযুক্ত। React Native এর সাথে SQLite ব্যবহার করলে আপনি ডিভাইসে ডাটা স্থানীয়ভাবে সংরক্ষণ এবং পরিচালনা করতে পারেন।
React Native অ্যাপ্লিকেশনে SQLite ব্যবহারের জন্য react-native-sqlite-storage লাইব্রেরি বেশ জনপ্রিয় এবং সহজে ইনস্টল করা এবং ব্যবহৃত হয়।
React Native এর সাথে SQLite ব্যবহার করার জন্য প্রস্তুতি
১. React Native SQLite Storage ইনস্টলেশন
প্রথমে আপনার React Native প্রজেক্টে react-native-sqlite-storage লাইব্রেরি ইনস্টল করতে হবে। এটি ইনস্টল করার জন্য নিচের কমান্ডটি চালান:
npm install react-native-sqlite-storage
এটি React Native অ্যাপ্লিকেশনে SQLite ডাটাবেস ব্যবহারের জন্য প্রয়োজনীয় প্যাকেজ ইনস্টল করবে।
২. Linking লাইব্রেরি (React Native 0.59 বা পূর্ববর্তী সংস্করণ)
React Native 0.59 বা তার আগের সংস্করণে, লাইব্রেরি লিঙ্ক করার জন্য নিচের কমান্ডটি চালাতে হবে:
react-native link react-native-sqlite-storage
React Native 0.60 বা তার পরের সংস্করণে, Auto Linking কাজ করে, তাই আপনাকে আলাদাভাবে লিঙ্ক করতে হবে না।
৩. iOS এর জন্য CocoaPods ইনস্টল করা
iOS অ্যাপ্লিকেশন তৈরি করতে হলে, আপনি CocoaPods ব্যবহার করে ডিপেনডেন্সি ইনস্টল করতে হবে:
cd ios/
pod install
cd ..
SQLite ব্যবহার করার জন্য কোড উদাহরণ
এখন, চলুন দেখে নেওয়া যাক কিভাবে React Native অ্যাপে SQLite ব্যবহার করা যায়। এখানে একটি সাধারণ উদাহরণ দেওয়া হলো যেখানে একটি ডাটাবেস তৈরি করা, টেবিল তৈরি করা এবং ডেটা ইনসার্ট/সিলেক্ট করা হবে।
১. SQLite ডাটাবেস তৈরি এবং টেবিল তৈরি
import SQLite from 'react-native-sqlite-storage';
// ডাটাবেস ওপেন বা তৈরি করা
const db = SQLite.openDatabase(
{name: 'mydatabase.db', location: 'default'},
() => {console.log("Database opened successfully");},
error => {console.log("Error: ", error);}
);
// টেবিল তৈরি করা
const createTable = () => {
db.transaction(tx => {
tx.executeSql(
'CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT, age INTEGER)',
[],
(tx, result) => { console.log("Table created successfully"); },
(tx, error) => { console.log("Error creating table", error); }
);
});
};
createTable();
২. ডেটা ইনসার্ট করা
const insertData = (name, age) => {
db.transaction(tx => {
tx.executeSql(
'INSERT INTO users (name, age) VALUES (?, ?)',
[name, age],
(tx, result) => {
console.log('Data inserted successfully');
},
(tx, error) => {
console.log('Error inserting data', error);
}
);
});
};
// উদাহরণ ব্যবহার
insertData('Alice', 30);
insertData('Bob', 25);
৩. ডেটা সিলেক্ট করা
const fetchData = () => {
db.transaction(tx => {
tx.executeSql(
'SELECT * FROM users',
[],
(tx, result) => {
console.log('Data fetched successfully', result.rows.raw());
},
(tx, error) => {
console.log('Error fetching data', error);
}
);
});
};
fetchData();
৪. ডেটা আপডেট করা
const updateData = (id, name, age) => {
db.transaction(tx => {
tx.executeSql(
'UPDATE users SET name = ?, age = ? WHERE id = ?',
[name, age, id],
(tx, result) => {
console.log('Data updated successfully');
},
(tx, error) => {
console.log('Error updating data', error);
}
);
});
};
// উদাহরণ ব্যবহার
updateData(1, 'Alice Updated', 35);
৫. ডেটা ডিলিট করা
const deleteData = (id) => {
db.transaction(tx => {
tx.executeSql(
'DELETE FROM users WHERE id = ?',
[id],
(tx, result) => {
console.log('Data deleted successfully');
},
(tx, error) => {
console.log('Error deleting data', error);
}
);
});
};
// উদাহরণ ব্যবহার
deleteData(2);
SQLite-এ অ্যাপ্লিকেশন ব্যবহারকারী ডেটা স্টোরেজ
SQLite অ্যাপ্লিকেশনগুলির জন্য একটি দুর্দান্ত সমাধান যখন আপনার অ্যাপ্লিকেশনের জন্য লোকাল ডেটা সংরক্ষণ প্রয়োজন। এটি বিশেষ করে মোবাইল অ্যাপ্লিকেশনের জন্য উপযুক্ত যেখানে আপনি ছোট ডেটাবেসে ডাটা সঞ্চয় করতে চান।
- ডেটা স্থানীয়ভাবে সঞ্চয়: SQLite ব্যবহার করলে আপনার অ্যাপ্লিকেশনটি ইন্টারনেট কানেকশন ছাড়াই ডেটা সংরক্ষণ এবং প্রসেস করতে পারে।
- কীভাবে ডেটা এনক্রিপ্ট করা: যদি নিরাপত্তা গুরুত্বপূর্ণ হয়, তাহলে SQLite-এ SQLCipher ব্যবহার করে ডেটা এনক্রিপ্ট করতে পারবেন।
সারাংশ
React Native অ্যাপে SQLite ব্যবহার করে আপনি ছোট থেকে মাঝারি আকারের ডাটাবেস পরিচালনা করতে পারেন। react-native-sqlite-storage লাইব্রেরি দিয়ে ডাটাবেস তৈরি, টেবিল তৈরি, ডেটা ইনসার্ট, আপডেট, সিলেক্ট, এবং ডিলিট করা সম্ভব। এটি সহজেই মোবাইল অ্যাপ্লিকেশনগুলিতে স্থানীয় ডেটা সংরক্ষণ এবং পরিচালনা করার জন্য একটি কার্যকরী সমাধান।
Read more